//#include "List.h"
//LT* LTInit()
//{
//	LT* newnode = (LT*)malloc(sizeof(LTDatatype));
//	if (newnode == NULL)
//	{
//		perror("malloc");
//		return NULL;
//	}
//	newnode->data = -1;
//	newnode->next = newnode->prev = newnode;
//	return newnode;
//}
//
//LT* LTBuynode(LTDatatype x)
//{
//	LT* newnode = (LT*)malloc(sizeof(LTDatatype));
//	if (newnode == NULL)
//	{
//		perror("mallloc");
//		return NULL;
//	}
//	newnode->data = x;
//	newnode->next = newnode->prev = newnode;
//	return newnode;
//}
//
//void LTPushback(LT* phead,LTDatatype x)
//{
//	assert(phead);
//	LT* newnode = LTBuynode(x);
//	newnode->next = phead;
//	newnode->prev = phead->prev;
//
//	phead->prev->next = newnode;
//	phead->prev = newnode;
//}
//
//void LTPrint(LT* phead)
//{
//	assert(phead);
//	LT* pcur = phead->next;
//	while (pcur != phead)
//	{
//		printf("%d->", pcur->data);
//		pcur = pcur->next;
//	}
//}
//
//void LTDstroy(LT** phead)
//{
//	assert(phead);
//	LT* pcur = (*phead)->next;
//	while (pcur != *phead)
//	{
//		LT* next = pcur->next;
//		free(pcur);
//		pcur = next;
//	}
//	free(*phead);
//}